package cn.bugstack.api;

/**
 * @Description: 知识库接口
 * @ClassName: IRagService
 * @Author: zhaiyongxin
 * @Date: 2025/7/8 14:12
 * @Version: 1.0
 */

import cn.bugstack.api.response.Response;
import org.springframework.ai.chat.ChatResponse;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;
import java.util.List;

/**
 * 知识库接口
 * @author zhai
 */
public interface IRAGService {
    /**
     *上传知识库文件
     * @param ragTag
     * @param files
     * @return
     */
    Response<String> uploadFile(String ragTag, List<MultipartFile> files);

    /**
     * 获取Rag标识列表
     * @return
     */
    Response<List<String>> queryRagTagList();

    /* *
     * @Title: analyzeGitRepository
     * @Author: zhaiy
     * @Date: 2025-07-14 22:45:02
     * @Params: [repoUrl, userName, token]
     * @Return: Response<String>
     * @Description: 解析git仓库
     */
    Response<String> analyzeGitRepository(String repoUrl, String userName, String token) throws Exception;

}
